//
//  LGSBasicUnaryGate.m
//  LogicSim
//
//  Created by Jeremy Pereira on 21/03/2013.
//
//

#import "LGSBasicUnaryGate.h"
#import "LGSName.h"

@implementation LGSBasicUnaryGate

-(TimeTick) gateDelay
{
    return 1;
}

+(NSArray*) defaultInputNames
{
    return @[[LGSName nameWithConnectionString: @"in"]];
}

+(NSArray*) defaultOutputNames
{
    return @[[LGSName nameWithConnectionString: @"out"]];
}

+(LGSName*) inputName
{
    static LGSName* name = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken,
    ^{
        name = [LGSName nameWithConnectionString: @"in"];
    });
    return name;
}

+(LGSName*) outputName
{
    static LGSName* name = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken,
                  ^{
                      name = [LGSName nameWithConnectionString: @"out"];
                  });
    return name;
}

@end
